<template>
  <div>
    <wx-open-launch-weapp
      id="launch-btn"
      username="gh_21c954017d6d"
      path="pages/index/index.html"
    >
      <script type="text/wxtag-template">
        <style>.btn { margin: 50px; }</style>
        <button class="btn">打开小程序</button>
      </script>
    </wx-open-launch-weapp>
  </div>
</template>

<script>
    import wx from "weixin-js-sdk";
    export default {
        data() {
            return {
                msg: "关注博主更多文章 https://blog.csdn.net/qq_39882537"
            }
        },
      beforeCreate(){
        this.$api.querySdk(location.href.split('#')[0]).then(res=>{
            if(res.status === 200) {
                // console.log('wxa7994d122e3ef074',res.data.timestamp,res.data.nonceStr,res.data.signature)
                wx.config({
                    debug: true, // 是否开启调试模式
                    appId: "wxa7994d122e3ef074", // 必填，公众号的唯一标识
                    timestamp: res.data.timestamp, // 必填，生成签名的时间戳
                    nonceStr: res.data.nonceStr, // 必填，生成签名的随机串
                    signature: res.data.signature, // 必填，签名，见附录1
                    jsApiList: [
                    "wx-open-launch-weap"
                    ],
                    openTagList:['wx-open-launch-weapp'] 
                })
            }
        })
        // 通过ready接口处理成功验证
        wx.ready(function () {
          // config信息验证后会执行ready方法，所有接口调用都必须在config接口获得结果之后，config是一个客户端的异步操作，所以如果需要在页面加载时就调用相关接口，则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口，则可以直接调用，不需要放在ready函数中
        });
        // 通过error接口处理失败验证
        wx.error(function (res) {
            console.log('res---',res)
          // config信息验证失败会执行error函数，如签名过期导致验证失败，具体错误信息可以打开config的debug模式查看，也可以在返回的res参数中查看，对于SPA可以在这里更新签名
        });
      },
        mounted() {
        let wxJs = document.createElement('script');
          wxJs.src = "https://res.wx.qq.com/open/js/jweixin-1.6.0.js";
          document.head.appendChild(wxJs);
          wxJs.onload = function () {

          };
        },
        methods: {
            
        }
    }
</script>
